一种基于身份与位置分离映射机制的DoS攻击防御方法,在身份与位置分离网络体系的映射系统基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,代理服务器使通信状态标志与身份与位置分离网络体系的映射系统结合,该xTR映射缓存中映射信息的通信状态标志通过询问代理服务器得到,该代理服务器通过询问其管理范围内的终端,收集、维护终端的通信状态,并应答xTR的通信状态查询;当终端发现受到恶意攻击时,要求阻止攻击数据流的传输;当终端设置通信状态为允许部分连接时,发送端完成连接建立的过程。本发明可以防御DoS攻击,终端受到恶意攻击时可以主动请求防御,避免造成进一步的危害,且不影响终端其他通信连接。
1.一种基于身份与位置分离映射机制的DoS攻击防御方法,其特征在于,在身份与位置分离的映射系统基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,表示终端通信意愿,包括允许所有连接、允许部分连接、拒绝部分连接、拒绝所有连接;代理服务器使通信状态标志与身份与位置分离网络体系的映射系统结合,将通信状态等安全参数内嵌于映射系统的映射信息中,该xTR映射缓存中映射信息的通信状态标志通过询问代理服务器得到,该代理服务器通过询问其管理范围内的终端,收集、维护终端的通信状态,并应答xTR的通信状态查询;当终端发现受到恶意攻击时,发送过滤请求,要求阻止攻击数据流信息的传输过程;当终端设置通信状态为允许部分连接通信状态时,发送端发送连接数据包,完成连接建立的过程。
2.如权利要求1所述的DoS攻击防御方法,其特征在于,所述要求阻止攻击数据流信息的传输过程,包括下列步骤:1)A向B连续发送数据流P
b,P
b按照身份与位置分离网络体系中终端间通信过程到达B,终端B根据数据流P
b判断终端A在发起攻击或其他恶意行为,B需要阻止来自A的数据;B向xTR
2发送过滤请求报文F
REQ;过滤请求报文F
REQ中包含过滤目标EID
A,过滤时间Tb,过滤请求源B的通信状态和通信状态有效期Ts等信息;2)xTR
2验证过滤请求报文F
REQ的真实性,添加认证信息MAC
RP供代理服务器PS
2验证,xTR
2然后向代理服务器PS
2转发F
REQ;3)PS
2验证F
REQ中的认证信息MAC
RP,验证成功后PS
2储存终端B的通信状态信息,通信状态有效期Ts,过滤目标地址EID
A,过滤时间Tb等信息,PS
2根据过滤请求报文F
REQ中的过滤目标EID
A,向过滤目标EID
A所在管理范围的代理服务器PS
1发送过滤执行报文F
DO,过滤执行报文F
DO包括过滤请求源EID
B,B的通信状态,过滤目标EID
A,过滤时间Tb信息;4)代理服务器PS
1验证F
DO的真实性,添加认证信息MAC
PR供xTR
1验证,转发过滤执行报文F
DO到xTR
1;5)xTR
1验证F
DO中的认证信息MAC
PR,验证成功后xTR
1根据过滤源EID
B,将通信状态标志Filter加入到映射缓存的EID
B-to-RLOC
2条目中,即映射信息变为EID
B-to-RLOC
2-Filter,其中通信状态标志Filter包含B的通信状态,过滤目标EID
A和过滤时间Tb等信息;xTR
1向终端A转发F
DO,告之发送到终端B的数据包进入过滤机制,在过滤时间Tb内的向B发送的数据包都将被丢弃;至此终端B完成对终端A恶意攻击数据包的过滤设置,Tb时间内终端A向终端B发送的数据包到达xTR
1时,xTR
1查询映射缓存或代理服务器得知终端B要求过滤终端A发送到终端B的数据包,xTR
1丢弃源为EID
A目的地为EID
B的数据包。
3.如权利要求1所述的DoS攻击防御方法,其特征在于,所述完成连接建立的过程的步骤包括:1)终端A向B发送数据包P
f;2)xTR
1查询映射缓存中是否存在EID
B-to-RLOC
2映射信息,若没有则向映射服务器MS
1查询;3)映射服务器MS
1向xTR
1返回EID
B的映射信息;4)xTR
1向PS
1发送连接询问报文L
RQ,询问本次连接是否被允许,连接询问报文包括连接请求源EID
A,连接目的EID
B等信息;5)PS
1验证连接询问报文L
RQ的真实性,PS
1向终端B所在管理范围的代理服务器PS
2转发连接询问报文L
RQ;6)PS
2查询存储的EID
B的通信状态,连接请求源EID
A是否被拒绝连接,若EID
A被拒绝,则返回连接回复报文L
RP到PS
1,转到11);否则,PS
2向连接询问报文L
RQ添加MAC
PR’以便xTR
2验证,并向B转发连接询问报文L
RQ;7)xTR
2验证L
RQ中的认证信息MAC
PR’,向L
RQ中添加认证信息MAC
RE供终端验证,并转发连接询问报文L
RQ到终端B;8)终端B验证L
RQ中的认证信息MAC
RE;根据连接请求源EID
A和终端B的网络状态,返回连接回复报文L
RP;状态应答报文包含B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息;9)xTR
2验证连接回复报文L
RP,向L
RP添加认证信息MAC
RP’,并向PS
2转发连接回复报文L
RP;10)PS
2验证L
RP中的认证信息MAC
RP’,储存终端B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息;PS
2发送连接回复报文L
RP到PS
1;11)PS
1验证L
RP的真实性,添加认证信息MAC
PR到连接回复报文L
RP并转发给xTR
1;12)xTR
1验证L
RP的认证信息MAC
PR,确认连接回复报文L
RP的真实性;将终端B的通信状态信息、是否允许终端A的连接请求等信息存储到映射缓存中对应的EID
B-to-RLOC
2映射条目中;xTR
1根据B是否允许终端A的连接请求等信息判断是否处理并转发数据包P
f;13)xTR
2处理数据包P
f包头并转发到终端B,xTR
2向映射缓存中的EID
A-to-RLOC
1条目加入终端A的默认通信状态允许EID
B与EID
A的通信,允许xTR
2转发B向A发送的数据。
4.如权利要求1所述的DoS攻击防御方法,其特征在于,通信状态标志包含:终端通信状态、通信状态有效期Ts、允许或拒绝的终端标识EID、过滤时间Tb等其他信息。
5.如权利要求1所述的DoS攻击防御方法,其特征在于,允许部分连接状态和拒绝部分连接状态互不排斥,可同时存在,未允许或拒绝的连接可以发起连接请求;允许所有连接是终端默认的连接状态;在允许部分连接状态,被允许的终端可以与其直接建立连接,其他未被允许的终端发起连接时需要询问代理服务器连接是否被允许,代理服务器返回被请求终端对该连接请求的决定;在拒绝部分连接状态,只需要阻止部分指定终端的连接请求,其他未被指定终端的连接可以直接建立,不受影响,拒绝部分连接状态可以拒绝某个终端的连接请求,也可以拒绝某个接入网内所有终端的连接请求;在拒绝所有连接状态,终端只接受所在接入网内其他终端的连接请求,不接受其他接入网的终端连接请求,当终端可以与其他接入网终端通信时,需要修改拒绝所有连接状态为其他通信状态。
6.如权利要求1所述的DoS攻击防御方法,其特征在于,代理服务器工作在控制平面,管理接入网中终端的通信状态标志,管理范围是通过xTR与其相连的接入网;所有代理服务器组成一个专用网络,代理服务器之间可以通过隧道或者其他链路通信;代理服务器之间可以完成密钥协商与分配,数据交换、转发与认证等功能;代理服务器与管理范围内xTR可以完成密钥协商与分配,数据交换与认证等功能;MAC
RP是由xTR和代理服务器协商的密钥生成的消息认证码,可以完成消息从xTR到代理服务器的完整性验证;MAC
PR是由代理服务器和xTR协商的密钥生成的消息认证码,可以完成消息从代理服务器到xTR的完整性验证。
7.如权利要求1所述的DoS攻击防御方法,其特征在于,终端可以不定期的向代理服务器发送状态通告报文指定其通信状态;为了避免攻击,xTR限制通信状态通告报文的速率;代理服务器收集、储存管理范围内终端的通信状态,终端通信状态快到期时,代理服务器主动向终端发送状态查询报文以便更新通信状态;一般情况下通信状态有效期Ts和过滤时间Tb大于映射信息在xTR的映射缓存的有效期TTL。
8.如权利要求1所述的DoS攻击防御方法,其特征在于,代理服务器的逻辑功能可以集成到映射服务器上,只需要在映射服务器中对应EID的映射信息条目中加入通信状态标志Filter就可以表示该终端的通信状态;终端通信状态随对应映射信息存储、传输和更新而不影响映射系统的基本功能。
9.如权利要求1所述的DoS攻击防御方法,其特征在于,连接回复报文可以不经过代理服务器组成的专用网络转发,可以通过xTR
2和核心网中间路由器的路由传输到发送端的xTR
1,xTR
1根据连接回复报文的信息设置对应终端的通信状态。
10.如权利要求1所述的DoS攻击防御方法,其特征在于,代理服务器的部署方式可以是分布式的,也可以是集中式的,或者其他形式;代理服务器之间、代理服务器与xTR之间、xTR与终端之间的控制信息真实性验证方法可以使用数字签名,消息认证码MAC等方法;代理服务器的逻辑功能可以集成到映射服务器中,安全传输方法与映射系统有效结合,共同完成通信状态查询应答和映射信息查询应答的双重功能而互不影响。
技术领域本发明涉及一种基于身份与位置分离映射机制的DoS攻击防御方法,使得终端受到恶意攻击时可以主动请求防御,避免造成进一步的危害且不影响终端其他通信连接。属于网络安全技术领域。
背景技术身份与位置分离网络体系可以解决路由可扩展问题,然而,正如传统网络面临的安全问题,身份与位置分离网络体系仍然面临许多网络安全问题。DoS和DDoS攻击是传统网络中的主要攻击方式,也将是身份与位置分离网络体系的主要安全威胁。传统网络中连接建立时接收端并不知道发送端通信的意图,接收端处于被动接收数据的状态。终端受到攻击时,不能采取措施阻止攻击数据流,而只能中断终端设备所有的通信,这样严重影响受害终端的正常通信,且攻击数据流持续影响受害终端网络的数据传输。StopIt系统是基于过滤规则的DoS防御系统。在StopIt系统中,接收端发现发送端为恶意节点时,接收端可以请求路由器设置过滤规则,阻断发送端到接收端的数据流。StopIt系统工作的具体步骤为:1)接收端Hd检测到受发送端Hs的攻击,Hd向所在接入路由器Rd发送过滤Hs数据流的请求;过滤请求中包含Hd、Hs的地址和过滤时间Tb;2)接入路由器Rd验证Hd过滤请求;Rd向所在自治系统(Autonomousxa0System,AS)的StopIt服务器Sd发送过滤Hs数据包的请求;3)接收端AS的StopIt服务器Sd转发过滤请求到Hs所在AS的StopIt服务器Ss;4)发送端AS的StopIt服务器Ss向Hs的接入路由器Rs发送过滤Hs的数据包请求;5)发送端接入路由器Rs验证Ss的过滤请求,创建过滤规则进行过滤。Rs向发送端Hs发送过滤通告,告之发往Hd数据流被过滤,在Tb时间内停止向Hd发送数据包。然而,StopIt系统存在一系列缺点:1)过滤规则可扩展性受限。处理大规模DoS攻击时,路由器要维护巨大规模的过滤规则,复杂大量的过滤规则可能严重影响路由器的数据包处理速度。2)StopIt系统只允许终端受到攻击时可以发送请求阻止恶意攻击行为,不能在通信连接建立时就为终端提供允许或拒绝能力。3)StopIt和身份与位置分离网络体系结合性差。StopIt在自治域(AS)的边缘路由器过滤数据包,而身份与位置分离网络体系将接入网与核心网分离,用户处于接入网,应在接入网边缘路由器过滤数据包过滤。4)StopIt没有存储终端策略的功能。当终端需要长时间维持在某一个策略状态时,如拒绝或允许部分通信数据,StopIt不能提供这种支持。
发明内容本发明的目的是提供一种基于身份与位置分离映射机制的DoS攻击防御方法,减少网络中恶意数据传输,当终端受到恶意攻击时可以主动请求防御,避免造成进一步的危害,且不影响终端其他通信连接。为此,本发明提供了一种基于身份与位置分离映射机制的DoS攻击防御方法,其特征在于,在身份与位置分离映射系统的基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,表示终端通信意愿,包括允许所有连接、允许部分连接、拒绝部分连接、拒绝所有连接等;代理服务器使通信状态标志与身份与位置分离网络体系的映射系统结合,将通信状态等安全参数内嵌于映射系统的映射信息中,该xTR映射缓存中映射信息的通信状态标志通过询问代理服务器得到,该代理服务器通过询问其管理范围内的终端,收集、维护终端的通信状态,并应答xTR的通信状态查询;当终端发现受到恶意攻击时,发送过滤请求,要求阻止攻击数据流传输;当终端设置通信状态为允许部分连接通信状态时,发送端需要发送连接数据包,完成连接建立的过程。优选地,所述要求阻止攻击数据流传输的过程,包括下列步骤:1)A向B连续发送数据流P
b,P
b按照身份与位置分离网络体系中终端间通信过程到达B,终端B根据数据流P
b判断终端A在发起攻击或其他恶意行为,B需要阻止来自A的数据。B向xTR
2发送过滤请求报文F
REQ。过滤请求报文F
REQ中包含过滤目标EID
A,过滤时间Tb,过滤请求源B的通信状态和通信状态有效期Ts等信息;2)xTR
2验证过滤请求报文F
REQ的真实性,添加认证信息MAC
RP供代理服务器PS
2验证。xTR
2然后向代理服务器PS
2转发F
REQ;3)PS
2验证F
REQ中的认证信息MAC
RP。验证成功后PS
2储存终端B的通信状态,通信状态有效期Ts,过滤目标地址EID
A,过滤时间Tb等信息。PS
2根据过滤请求报文F
REQ中的过滤目标EID
A,向过滤目标EID
A所在管理范围的代理服务器PS
1发送过滤执行报文F
DO,过滤执行报文F
DO包括过滤请求源EID
B,B的通信状态,过滤目标EID
A,过滤时间Tb;4)代理服务器PS
1验证F
DO的真实性,添加认证信息MAC
PR供xTR
1验证,转发过滤执行报文F
DO到xTR
1;5)xTR
1验证F
DO中的认证信息MAC
PR。验证成功后xTR
1根据过滤源EID
B,将通信状态标志Filter加入到映射缓存的EID
B-to-RLOC
2条目中(即映射信息变为EID
B-to-RLOC
2-Filter,其中通信状态标志Filter包含B的通信状态,过滤目标EID
A和过滤时间Tb等信息)。xTR
1向终端A转发F
DO,告之发送到终端B的数据包进入过滤机制,在过滤时间Tb内的向B发送的数据包都将被丢弃;至此终端B完成对终端A恶意攻击数据包的过滤设置,Tb时间内终端A向终端B发送的数据包到达xTR
1时,xTR
1查询映射缓存或代理服务器得知终端B要求过滤终端A发送到终端B的数据包,xTR
1丢弃源为EID
A目的地为EID
B的数据包。优选地,所述完成连接建立的过程的步骤包括:1)终端A向B发送数据包P
f;2)xTR
1查询映射缓存中是否存在EID
B-to-RLOC
2映射信息,若没有则向映射服务器MS
1查询;3)映射服务器MS
1向xTR
1返回EID
B的映射信息;4)xTR
1向PS
1发送连接询问报文L
RQ,询问本次连接是否被允许。连接询问报文包括连接请求源EID
A,连接目的EID
B等信息;5)PS
1验证连接询问报文L
RQ的真实性。PS
1向终端B所在管理范围的代理服务器PS
2转发连接询问报文L
RQ;6)PS
2查询存储的EID
B的通信状态,连接请求源EID
A是否被拒绝连接。若EID
A被拒绝,则返回连接回复报文L
RP到PS
1,转到11);否则,PS
2向连接询问报文L
RQ添加MAC
PR’以便xTR
2验证,并向B转发连接询问报文L
RQ;7)xTR
2验证L
RQ中的认证信息MAC
PR’,向L
RQ中添加认证信息MAC
RE供终端验证,并转发连接询问报文L
RQ到终端B;8)终端B验证L
RQ中的认证信息MAC
RE;根据连接请求源EID
A和终端B的网络状态,返回连接回复报文L
RP;状态应答报文包含B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息;9)xTR
2验证连接回复报文L
RP,向L
RP添加认证信息MAC
RP’,并向PS
2转发连接回复报文L
RP;10)PS
2验证L
RP中的认证信息MAC
RP’,储存终端B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息;PS
2发送连接回复报文L
RP到PS
1;11)PS
1验证L
RP的真实性,添加认证信息MAC
PR到连接回复报文L
RP并转发给xTR
1;12)xTR
1验证L
RP的认证信息MAC
PR,确认连接回复报文L
RP的真实性;将终端B的通信状态信息、是否允许终端A的连接请求等信息存储到映射缓存中对应的EID
B-to-RLOC
2映射条目中;xTR
1根据B是否允许终端A的连接请求等信息判断是否处理并转发数据包P
f;13)xTR
2处理数据包P
f包头并转发到终端B。xTR
2向映射缓存中的EID
A-to-RLOC
1条目加入终端A的默认通信状态允许EID
B与EID
A的通信,允许xTR
2转发B向A发送的数据。优选地,通信状态标志包含:终端通信状态、通信状态有效期Ts、允许或拒绝的终端标识EID、过滤时间Tb等其他信息。优选地,允许部分连接状态和拒绝部分连接状态互不排斥,可同时存在,未允许和拒绝的连接可以发起连接请求;允许所有连接是终端默认的连接状态;在允许部分连接状态,被允许的终端可以与其直接建立连接,其他未被允许的终端发起连接时需要询问代理服务器连接是否被允许,代理服务器返回被请求终端对该连接请求的决定;在拒绝部分连接状态,只需要阻止部分指定终端的连接请求,其他未被指定终端的连接可以直接建立,不受影响,拒绝部分连接状态可以拒绝某个终端的连接请求,也可以拒绝某个接入网内所有终端的连接请求;在拒绝所有连接状态,终端只接受所在接入网内其他终端的连接请求,不接受其他接入网的终端连接请求,当终端可以与其他接入网终端通信时,需要修改拒绝所有连接状态为其他通信状态。优选地,代理服务器工作在控制平面,管理接入网中终端的通信状态标志,管理范围是通过xTR与其相连的接入网;所有代理服务器组成一个专用网络,代理服务器之间可以通过隧道或者其他专用链路通信;代理服务器之间可以完成密钥协商与分配,数据交换、转发与认证等功能;代理服务器与管理范围内xTR可以完成密钥协商与分配,数据交换、转发与认证等功能;MAC
RP是由xTR和代理服务器协商的密钥生成的消息认证码,可以完成消息从xTR到代理服务器的完整性验证;MAC
PR是由代理服务器和xTR协商的密钥生成的消息认证码,可以完成消息从代理服务器到xTR的完整性验证。优选地,终端可以不定期的向代理服务器发送状态通告报文指定其通信状态;为了避免攻击,xTR可以限制通信状态通告报文的速率;代理服务器收集、储存管理范围内终端的通信状态,终端通信状态快过期时,代理服务器主动向终端发送状态查询报文以便更新通信状态;一般情况下通信状态有效期Ts和过滤时间Tb大于映射信息在xTR的映射缓存的有效期TTL,因而通信状态有效期Ts和过滤时间Tb不影响xTR中映射缓存的映射条目数。优选地,代理服务器的逻辑功能可以集成到映射服务器上,只需要在映射服务器中对应EID的映射信息条目中加入通信状态标志Filter就可以表示该终端的通信状态;终端通信状态随对应映射信息存储、传输和更新而不影响映射系统的基本功能。优选地,连接回复报文可以不经过代理服务器组成的专用转发,可以通过xTR
2和核心网中间路由器的路由传输到发送端的xTR
1,xTR
1根据连接回复报文的信息设置对应终端的通信状态标志。优选地,代理服务器的部署方式可以是分布式的,也可以是集中式的,或者其他形式;代理服务器之间、代理服务器与xTR之间、xTR与终端之间的消息真实性验证方法可以使用数字签名,消息认证码MAC等方法;代理服务器的逻辑功能可以集成到映射服务器中,由映射服务器同时完成通信状态查询应答和映射信息查询应答的双重功能而互不影响。根据本发明,基于身份与位置分离的映射机制,设计了可以与身份与位置分离网络体系的映射系统有效结合的DoS攻击防御方法,赋予接收端主动阻止恶意攻击和主动拒绝通信连接的能力。根据本发明,使得身份与位置分离网络体系的终端不再像传统网络被动的接收数据,被攻击时无能为力。根据本发明,赋予了身份与位置分离网络体系中终端额外的能力,可以使终端参与到攻击防御中,帮助网络服务提供商(Internetxa0Servicexa0Provider,ISP)改善网络环境,终端受到恶意攻击时可以主动发送请求,过滤恶意数据包,避免受到进一步的危害,且不影响终端其他通信连接。根据本发明,终端不能伪造其他接入网内终端地址,在身份与位置分离网络体系中,为终端提供了一种主动的DoS攻击防御方法,使终端有能力允许或拒绝建立通信连接请求;使终端在受到恶意攻击时,有能力阻止恶意攻击数据流而不影响终端其他的数据通信,保障终端网络通信服务的正常运行。根据本发明,基于身份与位置分离网络体系,在身份与位置分离的映射信息中加入额外的控制信息,为终端提供辅助管理其映射信息的能力,使终端受到攻击时可以很容易的阻止恶意信息,并且终端可以根据网络情况或终端的策略,允许或拒绝其他终端的连接请求。根据本发明,内嵌于身份与位置分离网络体系的映射机制的DoS攻击防御方法,可以与映射系统有效结合,共同完成映射解析和DoS攻击防御的功能。在本发明中,终端可以依据网络状况改变其通信状态,不定期的向代理服务器通告其通信状态,防止自己受到恶意攻击。终端通过设置通信状态标志Filter,可以允许或拒绝某个连接请求;受到攻击时可以准确地阻止从恶意节点来的数据。本发明在身份与位置分离网络体系中授权终端用户管理其连接的能力,及时阻止恶意数据流入网络,保障网络安全环境。
附图说明图1是根据现有技术的身份与位置分离网络体系拓扑示意图。图2是根据本发明的报文交换流程图。图3是根据本发明的实例的操作过程示意图。
具体实施方式近年来,互联网用户数目变得空前庞大。各种业务在互联网上开展,包括移动性、多家乡、流量工程(Trafficxa0Engineering)等,使全球路由表的规模发生巨大增长和不稳定抖动。互联网架构委员会(Internetxa0Architecturexa0Board,IAB)透露,互联网路由系统面临严重的可扩展性问题。随着IPv4地址的耗尽和IPv6的逐步应用,IPv6巨大的地址空间将可能超过路由表的处理能力,影响互联网的正常运行。因此,IAB委托互联网研究专门工作组(Internetxa0Researchxa0Taskxa0Force,IRTF)的路由研究组(Routingxa0Researchxa0Group,RRG)设计一个新的网络体系解决路由可扩展性问题。当前研究人员提出了多种网络体系方案解决路由可扩展性问题。传统网络中IP地址同时具有位置属性和身份属性,这种语义过载限制了网络的灵活性。在当前提出的多种网络体系方案中,大多数方案都采用身份与位置分离的思想,设计两种不同类型的地址:身份标识(Identifiers)表示身份属性,和位置标识(Locators)表示位置属性。身份标识用来表示一个终端,位置标识用来表示终端连接到网络中的拓扑位置。身份标识可以完成数据包在接入网中的路由,不随终端位置变化而改变;位置标识完成数据包在核心网的寻路功能,随终端移动而改变。由于身份标识与位置标识分别应用在接入网和核心网,需要一个映射系统将身份标识与位置标识对应起来。采用这种身份与位置分离思想的网络体系方案主要有:LISP,GLI-Split,Six/One,Ivip,一体化标识网络等。身份与位置分离网络体系方案的两个地址类型:终端标识(Endpointxa0Identifier,EID):表示终端身份属性的身份标识,不随终端移动而改变;以及路由标识(Routingxa0Locator,RLOC):表示终端位置属性的位置标识,随终端移动而改变。EID与RLOC的映射关系可以是一对多,多对一,多对多。身份与位置分离体系方案主要功能模块有:映射系统(Mappingxa0System),由映射服务器(Mappingxa0Server,MS)组成,完成身份标识与位置标识的映射存储、查询和应答;以及出/入口隧道路由器(Egress/Ingressxa0Tunnelxa0Router,xTR),连接接入网与核心网,负责终端标识与路由标识映射信息的查询,数据包头操作(包括映射封装(Mapxa0&xa0Encap)或地址替换等)和数据包的转发。xTR的映射缓存(Mappingxa0Cache)存储本地接入终端的映射信息和部分通信对端的映射信息。如图1,身份与位置分离网络体系中终端间通信过程如下:步骤1:A发送源和目的地址分别为EID
A和EID
B的数据包,数据包在发送端接入网使用EID寻路转发。步骤2:数据包到达出/入口路由器xTR
1。xTR
1保存了EID
A-to-RLOC
1的映射信息,xTR
1查询映射缓存是否保存对应EID
B-to-RLOC
2的映射信息,若没有则向映射服务器MS
1询问EID
B对应的映射信息。步骤3:映射服务器MS
1在映射系统中查询EID
B的映射信息,向xTR
1返回对应EID
B-to-RLOC
2的映射信息,xTR
1将EID
B-to-RLOC
2的映射信息保存到映射缓存中。步骤4:xTR
1对数据包进行数据包头操作(映射封装或地址替换等),数据包源和目的地址变为RLOC
1和RLOC
2。然后xTR
1向核心网转发处理后的数据包。步骤5:数据包使用路由地址RLOC寻路到达xTR
2。xTR
2保存了EID
B-to-RLOC
2的映射信息,xTR
2查询映射缓存是否存储EID
A-to-RLOC
1的映射信息,若没有则询问映射服务器MS
2。步骤6:映射服务器MS
2映射系统中查询EID
A的映射信息,向xTR
2返回EID
A-to-RLOC
1的映射信息,xTR
2将其保存在映射缓存中。步骤7:xTR
2进行数据包头逆操作(映射解封装或地址逆替换),数据包源和目的地址变为EID
A和EID
B,然后,xTR
2向B转发数据包。身份与位置分离网络体系方案中的接入网与核心网分别采用两种独立的名字空间,终端标识和路由标识。终端标识只在接入网内完成数据包寻路转发,接入网络内拓扑变化只影响接入网络内的路由表信息;路由标识只在核心网内完成数据包寻路转发,核心网拓扑变化只影响核心网络内的路由表信息。映射系统将接入网的终端标识和核心网的路由标识对应起来,它负责收集、存储和更新终端标识与路由标识的映射关系。映射服务器接收映射查询报文,返回映射应答报文。本发明是在身份与位置分离的映射系统基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,表示终端对连接采取的态度。xTR映射缓存中映射条目的通信状态标志可以询问代理服务器得到。代理服务器(Proxyxa0Server)通过询问其管理范围内终端,收集、维护终端的通信状态,并应答xTR的通信状态查询。通信状态标志(Filter):通信状态标志可与映射信息对应,是由终端指定的通信状态,表示其对通信连接的态度。通信状态标志包含:终端通信状态、通信状态有效期Ts、允许或拒绝的终端标识EID、过滤时间Tb等其他信息。终端通信状态包括:允许所有连接、允许部分连接、拒绝部分连接、拒绝所有连接等。其中,允许部分连接状态和拒绝部分连接状态互不排斥,可同时存在,未允许或拒绝的连接可以发起连接请求。1)允许所有连接,该状态表示终端当前允许所有请求的连接,是终端默认的连接状态,终端未特别指定其通信状态时默认此状态。2)允许部分连接,该状态是终端指定的一种允许部分终端连接请求的通信状态。终端的通信状态标志设置为此状态时,被允许的终端可以与其直接建立连接,其他未被允许的终端发起连接时需要询问代理服务器连接是否被允许,代理服务器返回被请求终端对该连接请求的决定。3)拒绝部分连接,该状态是终端指定的一种拒绝部分终端连接请求的通信状态。这种状态只阻止部分指定终端的连接请求,其他未被指定终端的连接可以直接建立,不受影响。拒绝部分连接状态可以拒绝某个终端的连接请求,也可以拒绝某个接入网内所有终端的连接请求。4)拒绝所有连接,该状态是终端拒绝非所在接入网连接请求的通信状态。终端指定这种状态时,终端只接受所在接入网内其他终端的连接请求,不接受其他接入网的终端连接请求。当终端与其他接入网终端通信时,需要修改拒绝所有连接状态为其他通信状态。本发明中引入的代理服务器(Proxyxa0Server)工作在控制平面,管理接入网中终端的通信状态标志,管理范围是通过xTR与其相连的接入网。所有代理服务器组成一个专用网络,代理服务器之间可以通过隧道或者其他链路通信。代理服务器之间可以完成密钥协商与分配,数据交换、转发与认证等功能;代理服务器与管理范围内xTR可以完成密钥协商与分配,数据交换与认证等功能。MAC
RP是由xTR和代理服务器协商的密钥生成的消息认证码,可以完成消息从xTR到代理服务器的完整性验证;MAC
PR是由代理服务器和xTR协商的密钥生成的消息认证码,可以完成消息从代理服务器到xTR的完整性验证。如图2所示,本发明的身份与位置分离网络体系下的终端B主动阻止终端A攻击的流程如下:步骤1-7:A向B连续发送数据流P
b,P
b按照身份与位置分离网络体系中终端间通信过程到达B。步骤8:终端B根据数据流P
b判断终端A在发起攻击或其他恶意行为,B需要阻止来自A的数据。B向xTR
2发送过滤请求报文F
REQ。过滤请求报文F
REQ中包含过滤目标EID
A,过滤时间Tb,过滤请求源B的通信状态和通信状态有效期Ts等信息。步骤9:xTR
2验证过滤请求报文F
REQ的真实性,添加认证信息MAC
RP供代理服务器PS
2验证。xTR
2然后向代理服务器PS
2转发F
REQ。步骤10:PS
2验证F
REQ中的认证信息MAC
RP。验证成功后PS
2储存终端B的通信状态信息,通信状态有效期Ts,过滤目标地址EID
A,过滤时间Tb等信息。PS
2根据过滤请求报文F
REQ中的过滤目标EID
A,向过滤目标EID
A所在管理范围的代理服务器PS
1发送过滤执行报文F
DO,过滤执行报文F
DO包括过滤请求源EID
B,B的通信状态,过滤目标EID
A,过滤时间Tb。步骤11:代理服务器PS
1验证F
DO的真实性,添加认证信息MAC
PR供xTR
1验证,转发过滤执行报文F
DO到xTR
1。步骤12:xTR
1验证F
DO中的认证信息MAC
PR。验证成功后xTR
1根据过滤源EID
B,将通信状态标志Filter加入到映射缓存的EID
B-to-RLOC
2条目中(即映射信息变为EID
B-to-RLOC
2-Filter,其中通信状态标志Filter包含B的通信状态,过滤目标EID
A和过滤时间Tb等信息)。xTR
1向终端A转发F
DO,告之发送到终端B的数据包进入过滤机制,在过滤时间Tb内的向B发送的数据包都将被丢弃。至此终端B完成对终端A恶意攻击数据包的过滤设置。Tb时间内终端A向终端B发送的数据包到达xTR
1时,xTR
1查询映射缓存或代理服务器得知终端B要求过滤终端A发送到终端B的数据包,xTR
1丢弃源为EID
A目的地为EID
B的数据包。当终端B通信状态设置为允许部分连接状态时,未被允许的终端需要通过请求,被允许后才能建立连接。A与B的通信连接建立的过程如下:步骤13:终端A向B发送数据包P
f。步骤14:xTR
1查询映射缓存中是否存在EID
B-to-RLOC
2映射信息,若没有则向映射服务器MS
1查询。步骤15:映射服务器MS
1向xTR
1返回EID
B的映射信息。步骤16:xTR
1向PS
1发送连接询问报文L
RQ,询问本次连接是否被允许。连接询问报文包括连接请求源EID
A,连接目的EID
B等信息。步骤17:PS
1验证连接询问报文L
RQ的真实性。PS
1向终端B所在管理范围的代理服务器PS
2转发连接询问报文L
RQ。步骤18:PS
2查询存储的EID
B的通信状态,连接请求源EID
A是否在拒绝连接列表内。若EID
A仍被拒绝,则返回连接回复报文L
RP到PS
1,转到步骤23。否则PS
2向连接询问报文L
RQ添加MAC
PR’以便xTR
2验证,并向B转发连接询问报文L
RQ。步骤19:xTR
2验证L
RQ中的认证信息MAC
PR’,向L
RQ中添加认证信息MAC
RE供终端验证,并转发连接询问报文L
RQ到终端B。步骤20:终端B验证L
RQ中的认证信息MAC
RE。根据连接请求源EID
A和终端B的网络状态,返回连接回复报文L
RP。状态应答报文包含B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息。步骤21:xTR
2验证连接回复报文L
RP,向L
RP添加认证信息MAC
RP’,并向PS
2转发连接回复报文L
RP。步骤22:PS
2验证L
RP中的认证信息MAC
RP’,验证正确时储存终端B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息。PS
2发送连接回复报文L
RP到PS
1。步骤23:PS
1验证L
RP的真实性,添加认证信息MAC
PR到连接回复报文L
RP并转发给xTR
1。步骤24:xTR
1验证L
RP的认证信息MAC
PR,确认连接回复报文L
RP的真实性。将终端B的通信状态信息、是否允许终端A的连接请求等信息存储到映射缓存中对应的EID
B-to-RLOC
2条目中。xTR
1根据B是否允许终端A的连接请求等信息判断是否处理并转发数据包P
f。步骤25:xTR
2处理数据包P
f包头并转发到终端B。xTR
2向映射缓存中的EID
A-to-RLOC
1条目加入终端A的默认通信状态允许EID
B与EID
A的通信,允许xTR
2转发B向A发送的数据。终端可以不定期的向代理服务器发送状态通告报文指定其通信状态。为了避免攻击,xTR可以限制通信状态通告报文的速率。代理服务器收集、储存管理范围内终端的通信状态,终端通信状态快到期时,代理服务器主动向终端发送状态查询报文以便更新通信状态。需要指出的是,一般情况下通信状态有效期Ts和过滤时间Tb大于映射信息在xTR的映射缓存的有效期TTL。代理服务器是一个逻辑功能模块,代理服务器的逻辑功能可以集成到映射服务器上,这样只需要在映射服务器中对应EID的映射信息条目中加入通信状态标志Filter就可以表示该终端的通信状态。终端通信状态随对应映射信息存储、传输和更新而不影响映射系统的基本功能,减少消息交互数量,降低通信延迟。特别是,步骤21-23的连接回复报文可以不经过代理服务器组成的专用网络转发,可以通过xTR
2和核心网中间路由器的路由传输到发送端的xTR
1,xTR
1根据连接回复报文的信息设置对应终端的通信状态标志。特别是,代理服务器的部署方式可以是分布式的,也可以是集中式的,或者其他形式。代理服务器间组成的专用网络可以快速通信,其专用网络的数据处理和传输速度较快,不是终端间通信延迟的主要原因。特别是,代理服务器之间、代理服务器与xTR之间、xTR与终端之间的控制信息真实性验证方法可以使用数字签名,消息认证码MAC等验证方法。特别是,代理服务器的逻辑功能集成到映射服务器中,安全传输方法与映射系统有效结合,共同完成数据通信状态查询应答和映射信息查询应答的双重功能而互不影响,且这样可以减少控制消息量,降低开销。根据本发明,终端设置通信状态表示终端通信意愿的方法,包括允许所有连接,允许部分连接,拒绝部分连接,拒绝所有连接等通信状态。根据本发明,引入代理服务器的逻辑功能,使通信状态标志与身份与位置分离网络体系的映射系统结合,将通信状态等安全参数内嵌于映射系统的映射信息中。根据本发明,身份与位置分离网络体系下终端发现受到恶意攻击时,发送过滤请求,要求阻止攻击数据流信息的传输过程,包括步骤8-12。根据本发明,终端设置通信状态为允许部分连接通信状态时,发送端发送连接数据包,完成连接建立的过程,包括步骤13-25。如图3,终端A和终端B分别位于不同的接入网。映射服务器组成的映射系统构成一个专用网络。映射服务器中集成代理服务器逻辑功能。xTR连接接入网与核心网,完成映射查询、数据过滤、数据包头操作(映射封装(Mapxa0&xa0Encap)或地址替换)、数据包路由转发等功能。当终端A与终端B的连接已经建立,终端B发现终端A在进行恶意攻击行为,需要对A的数据进行过滤,请求过滤过程如下:步骤1:终端B发送过滤请求数据包F
REQ。步骤2:xTR
2验证F
REQ的真实性,添加认证信息MAC
RP供代理服务器PS
2验证,然后转发过滤数据包F
REQ到映射服务器MS
2。步骤3:映射服务器MS
2验证认证信息MAC
RP,确认F
REQ的真实性。在映射数据库的EID
B-to-RLOC
2映射条目中加入B的通信状态标志Filter,向MS
1发送过滤执行数据包F
DO。步骤4:MS
1验证过滤执行数据包F
DO的真实性,添加认证信息MAC
PR供xTR
1验证,然后转发F
DO到xTR
1。步骤5:xTR
1验证认证信息MAC
PR,确认过滤执行数据包F
DO的真实性。xTR
1更新映射缓存的对应映射信息终端EID
B的通信状态标志,转发过滤执行数据包F
DO到终端A,告之发送到终端B通信的数据包被过滤,过滤时间Tb。至此终端B完成对终端A恶意攻击数据包的过滤,终端A向终端B发送的数据包到达xTR
1时,xTR
1查询映射缓存得知终端B要求过滤终端A发送到终端B的数据包,xTR
1丢弃源为EID
A目的为EID
B的数据包。当终端B的通信状态设置为允许部分通信时,终端A主动与终端B的连接建立过程如下:步骤6:终端A向B发送数据包。步骤7:xTR
1缓存中没有映射信息,向映射服务器MS
1查询EID
B的映射信息和通信状态标志信息,发送包含通信状态查询信息的映射查询报文。步骤8:MS
1验证映射查询报文的真实性,向MS
2转发映射查询报文。步骤9:MS
2查询映射数据库,若MS
2映射数据库没有B的通信状态标志是拒绝EID
A与EID
B连接或拒绝信息已过期,则向终端B发送连接查询报文。若有,则在映射应答报文中加入拒绝连接信息,发送到xTR
2,转到步骤12。步骤10:xTR
2转发连接查询报文到B,B返回连接回复报文到MS
2。步骤11:MS
2向MS
1发送包含终端B连接回复信息的映射应答报文。步骤12:MS
1验证映射应答报文的真实性,加入认证信息MAC
MR以便xTR
1验证,转发映射应答报文到xTR
1。步骤13:xTR
1验证MAC
MR确认映射应答报文的真实性,将映射信息和连接回复信息储存在映射缓存中。终端B若允许连接,则完成数据包头操作,转发数据包。否则丢弃源为EID
A目的为EID
B的数据包。步骤14:xTR
2完成数据包头操作,转发从A发送来的数据包到B。至此终端A完成与终端B连接建立过程。若终端A不是攻击者,则通信可以一直正常进行。